package com.sml.mapper;

import com.sml.pojo.Category;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

@Mapper
public interface CategoryMapper {

    /**
     * 添加分类
     * @param category  分类对象
     */
    @Insert("INSERT INTO category (category_name, category_alias, create_user, create_time, update_time) " +
            "VALUES (#{categoryName}, #{categoryAlias}, #{createUser}, #{createTime}, #{updateTime})")
    void add(Category category);

    /**
     * 查询所有分类
     * @param userId  用户id
     * @return  分类集合
     */
    @Select("SELECT * FROM category WHERE create_user=#{userId}")
    List<Category> list(Integer userId);

    /**
     * 获取文章分类列表详情
     * @param id  分类id
     * @return  分类对象
     */
    @Select("SELECT * FROM category WHERE id=#{id}")
    Category findById(Integer id);

    /**
     * 更新文章分类列表
     * @param category  分类对象
     */
    @Update("UPDATE category SET category_name=#{categoryName}, category_alias=#{categoryAlias}, update_time=#{updateTime} WHERE id=#{id}")
    void update(Category category);
}
